请高手通俗解释一下"依赖注入"

来源:百度知道 编辑:UC知道 时间:2024/06/03 04:57:47
IOC就是依赖注入吗

依赖注入就是使类型之间的依赖关系可配置,也就是在运行时通过配置文件等手段确定类型之间的依赖关系。
而没有使用依赖注入的时候类型之间的关系是硬编码在程序中的。例如某个地方写了个new SqlDBReader();那么除非改源代码否则只能使用Sql Data Reader。使用依赖注入的话是CreateDBReader();//返回一个IDBReader接口实例
至于CreateDBReader这个方法创建的是OLEDB Reader还是Sql DB Reader就要看类置文件中是怎么配置的。

这样即为程序对DBReader类型的依赖被通过配置文件的方式在运行时注入到程序中去,简称依赖注入。

搂主可以研究一下企业库4.0里面的Unity应用程序块,就是实现这个功能的。依赖注入从另一个角度看,就是某些开发框架所提供的一种功能,用一段时间就明白了。

我觉得IOC和依赖注入就是一个东西,只不过是从不同的角度描述,不过也有很多牛人说它们有区别。